﻿using System;
using System.Runtime.InteropServices;
public class GlobalField
{
	// 
	
	////////////////////////////////////////////////////////////////////////////
	
	////数据描述头
	[StructLayout(LayoutKind.Sequential, Pack = 2)]
	public struct  tagDataDescribe
	{
		public UInt16							wDataSize;						//数据大小
		public UInt16							wDataDescribe;					//数据描述
	};

	
	////////////////////////////////////////////////////////////////////////////
	
	
	
	////状态信息
	public const ushort DTP_USER_STATUS= 100;		//用户状态
	public const ushort DTP_USER_TABLE= 101;		//游戏桌号
	public const ushort DTP_USER_CHAIR= 102;		//椅子号码
	public const ushort DTP_USER_PING= 103;		//网络延时
	public const ushort DTP_USER_INDEX= 104;		//用户索引
	public const ushort DTP_USER_ROUND= 105;		//循环计数
	public const ushort DTP_LOOK_ON_USER= 106;		//旁观玩家
	public const ushort TYPE_LEN= 32;		
	// 
	////手机信息
	public const ushort DTP_PHONE_OSVERSION= 1100;		//系统版本号
	public const ushort DTP_PHONE_SN= 1101;		//手机唯一标识
	////////////////////////////////////////////////////////////////////////////
	// 
	///////////////////////////////////////////////////////////////////////////////////////////
	
	// //IPC 数据包头
	[StructLayout(LayoutKind.Sequential, Pack = 8)]
	public struct  IPC_Head
	{
		public		tagDataDescribe	desc;
		public UInt16								wVersion;							//IPC 版本
		public UInt16								wRoomID;							//房间ID
		public UInt16								wDataSize;							//数据大小
		public UInt32								wMainCmdID;							//主命令码
		public Int64 								wSubCmdID;							//子命令码
		[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
		public byte[]								szTypeName;				//种类名字
	};

	////////////////////////////////////////////////////////////////////////////
	
	//#endif
}
